<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:p="http://primefaces.prime.com.tr/ui"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core">
    <h:head>
        <title>Listado de las subvenciones</title>        
        <link href="recursos/general.css" rel="stylesheet" type="text/css" />
        <script type="text/javascript">
            function crearMensaje(xhr, status, args){
                if(args.subvencionOK){
                    msgModif.show();
                    subvencionDialog.hide();
                }else if(args.noModificada){
                    msgNoModif.show();
                    subvencionDialog.hide();
                }else if(args.borradoOK){
                    borradoSi.show();
                    cd.hide();                   
                }else if(args.noBorrado){
                    borradoNo.show();
                    cd.hide();
                }else if(args.noModificada1){
                    msgNO.show();
                    cd2.hide();
                }else if(args.modificada){
                    msgSI.show();
                    cd2.hide();
                }
            }
            function descargar(archivo){
                window.open(archivo); 
            }
        </script>
    </h:head>
    <h:body>
        <h:form id="form">
            <!--Declaro la variable que pasaré a los bean para reutilizar las pantallas-->
            <f:metadata>
                <f:viewParam name="nuevo" value="#{sesionBean.strVariable}"/>
            </f:metadata>
            <f:phaseListener binding="#{sesionBean.phaseListenerImpl}" type="ongd.web.PhaseListenerImpl"/>
            
            <!--Nos mostrará el título de la página -->
            <h:outputText value="#{listado_Subvencion.titulo}" styleClass="textoTitulo"/>

            <!--Panel que muestra los datos de las subvenciones -->
            <p:dataTable id="panel" value="#{listado_Subvencion.subvenciones}" var="subvencion" paginator="true"  rows="30" 
                         paginatorPosition="bottom" emptyMessage="No se han encontrado subvenciones" style="margin-top: 10px;"> 
                <p:column filterBy="#{subvencion.proyecto.nombre}" filterMatchMode="contains" style="width: 20%;">
                    <f:facet name="header">
                        <h:outputText value="Nombre proyecto"/>
                    </f:facet>
                    <h:outputText value="#{subvencion.proyecto.nombre}"/> 
                </p:column >  
                <p:column sortBy="#{subvencion.entidad}" style="width: 20%;"> 
                    <f:facet name="header">
                        <h:outputText value="Entidad"/>
                    </f:facet>
                    <h:outputText value="#{subvencion.entidad}"/> 
                </p:column> 
                <p:column style="width: 15%;">
                    <f:facet name="header">
                        <h:outputText value="Importe solicitado"/>
                    </f:facet>
                    <h:outputText value="#{subvencion.importeSolicitado}">
                        <f:convertNumber pattern="0.00"/>
                    </h:outputText>
                </p:column> 
                <p:column style="width: 15%;"> 
                    <f:facet name="header">
                        <h:outputText value="Importe concedido"/>
                    </f:facet>
                    <h:outputText value="#{subvencion.importeConcedido}">
                        <f:convertNumber pattern="0.00"/>
                    </h:outputText>
                </p:column>
                <p:column style="width: 15%;"> 
                    <f:facet name="header">
                        <h:outputText value="Fecha de presentación"/>
                    </f:facet>
                    <h:outputText value="#{subvencion.fechaPresentacion}">
                        <f:convertDateTime pattern="dd/MM/yyyy"/>
                    </h:outputText>
                </p:column>
                <p:column style="width: 15%"> 
                    <f:facet name="header">
                        <h:outputText value="Opciones"/>
                    </f:facet>
                    <p:commandButton update="dialogo,form:display" oncomplete="subvencionDialog.show()" action="#{listado_Subvencion.consultar}"  
                                     image="ui-icon ui-icon-search" title="Consultar">  
                        <f:setPropertyActionListener value="#{subvencion}" target="#{listado_Subvencion.subvencion}" />  
                    </p:commandButton> 
                    <p:commandButton update="dialogo,form:display" oncomplete="subvencionDialog.show()" action="#{listado_Subvencion.editar}"  
                                     image="ui-icon ui-icon-pencil" title="Editar">  
                        <f:setPropertyActionListener value="#{subvencion}" target="#{listado_Subvencion.subvencion}" />  
                    </p:commandButton> 
                    <p:commandButton update="aviso" oncomplete="cd.show()"  
                                     image="ui-icon ui-icon-closethick" title="Borrar">
                        <f:setPropertyActionListener value="#{subvencion}" target="#{listado_Subvencion.subvencion}" />
                    </p:commandButton>
                </p:column> 
            </p:dataTable>

            <p:commandButton value="Exportar" styleClass="botonGrande" style="margin-top: 10px;" onclick="exportarDialog.show();"/>
            <p:dialog widgetVar="exportarDialog" header="Exportar datos" styleClass="dialogoNormal" modal="true" resizable="false" width="180">
                <!--Panel que permite exportar el contenido de la tabla a pdf o xls -->
                <h:panelGrid columns="2">
                    <h:commandLink  onclick="exportarDialog.hide();">
                        <p:graphicImage value="/imagenes/pdf.jpg" height="80px" width="60px"/>  
                        <p:dataExporter type="pdf" target="panel" fileName="Listado_Subvenciones" excludeColumns="5"/>
                    </h:commandLink>
                    <h:commandLink>
                        <p:graphicImage value="/imagenes/xls.jpg" height="90px" width="90px"/>
                        <p:dataExporter type="xls" target="panel" fileName="Listado_Subvenciones" excludeColumns="5"/>
                    </h:commandLink>
                </h:panelGrid>
            </p:dialog>

            <!--Dialogo que muestra los datos de la subvención seleccionada -->
            <p:dialog id="dialogo" header="Datos" widgetVar="subvencionDialog" resizable="false"  
                      width="600" modal="true" closable="false" styleClass="dialogoNormal">
                <p:panel id="display" >
                    <table>
                        <tr>
                            <td>
                                <h:outputText value="Nombre proyecto:" styleClass="texto"/>  
                            </td>
                            <td>
                                <h:outputText value="#{listado_Subvencion.subvencion.proyecto.nombre}" styleClass="texto2"/>  
                            </td>
                            <td>
                                <h:outputText value="Entidad:" styleClass="texto"/> 
                            </td>
                            <td>
                                <h:outputText value="#{listado_Subvencion.subvencion.entidad}" styleClass="texto2"/>
                            </td>                            
                        </tr>
                        <tr>
                            <td>
                                <h:outputText value="Fecha de presentación:" styleClass="texto"/>  
                            </td>
                            <td>
                                <h:outputText value="#{listado_Subvencion.subvencion.fechaPresentacion}" style="color:black" styleClass="texto2">
                                    <f:convertDateTime pattern="dd/MM/yyyy"/>
                                </h:outputText>  
                            </td>
                            <td>
                                <h:outputText value="Importe Solicitado:" styleClass="texto"/> 
                            </td>
                            <td>
                                <h:outputText value="#{listado_Subvencion.subvencion.importeSolicitado}" styleClass="texto2">
                                    <f:convertNumber pattern="0.00"/>
                                </h:outputText>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <h:outputText value="Fecha de transferencia:" styleClass="texto"/> 
                            </td>
                            <td>
                                <p:calendar showOn="button" navigator="true" mindate="#{listado_Subvencion.subvencion.fechaPresentacion}"
                                            value="#{listado_Subvencion.subvencion.fechaTransferencia}" pattern="dd/MM/yyyy"
                                            disabled="#{!listado_Subvencion.editar}" size="9"/> 
                            </td>
                            <td>
                                <h:outputText value="Fecha de ingreso:" styleClass="texto"/> 
                            </td>
                            <td>
                                <p:calendar showOn="button" navigator="true" mindate="#{listado_Subvencion.subvencion.fechaPresentacion}"
                                            value="#{listado_Subvencion.subvencion.fechaIngreso}" pattern="dd/MM/yyyy"
                                            disabled="#{!listado_Subvencion.editar}" size="9"/> 
                            </td>                           
                        </tr>
                        <tr>
                            <td>
                                <h:outputText value="Importe Concedido:" styleClass="texto"/>  
                            </td>
                            <td>
                                <p:inputText value="#{listado_Subvencion.subvencion.importeConcedido}" readonly="#{!listado_Subvencion.editar}" styleClass="textoI">
                                    <f:convertNumber pattern="0.00"/>
                                </p:inputText>
                            </td>
                            <td>
                                <h:outputText value="Documento adjunto:" styleClass="texto"/> 
                            </td>
                            <td>
                                <h:panelGrid columns="2">
                                    <p:fileUpload auto="true" fileUploadListener="#{listado_Subvencion.subirAdjunto}" update="adjuntoDescarga"
                                                  rendered="#{listado_Subvencion.editar}"/>
                                    <p:commandButton id="adjuntoDescarga" type="button" value="Descargar" disabled="#{listado_Subvencion.subvencion.documentoAdjunto==null}"
                                                     onclick="descargar('ficherosAdjuntos/#{listado_Subvencion.subvencion.documentoAdjunto}')"
                                                     styleClass="botonNormal"/>
                            </h:panelGrid>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <h:outputText value="Descripcion:" styleClass="texto"/>  
                            </td>
                            <td colspan="3">
                                <p:inputText value="#{listado_Subvencion.subvencion.descripcion}" readonly="#{!listado_Subvencion.editar}" styleClass="textoI"/> 
                            </td>
                        </tr>                       
                        <tr>
                            <td>
                                <h:outputText value="Resolución:" styleClass="texto"/> 
                            </td>
                            <td>
                                <h:outputText id="resolucion" value="#{listado_Subvencion.resolucion}" styleClass="texto2"/> 
                            </td>
                            <td colspan="2">
                                <p:commandButton value="Modificar resolución" oncomplete="cd2.show()" rendered="#{listado_Subvencion.editar}" styleClass="botonNormal"/>  
                            </td>
                        </tr>
                    </table>
                </p:panel>

                <p:commandButton value="Aceptar" action="#{listado_Subvencion.aceptar}" oncomplete="crearMensaje(xhr, status, args)"
                                 onclick="subvencionDialog.hide();" update="panel" styleClass="botonGrande" style="margin-top: 10px;"/>
            </p:dialog>

            <!--Mensaje que indica que la subvención ha sido modifciada correctamente --> 
            <p:confirmDialog message="La subvención ha sido modificado correctamente" severity="info" widgetVar="msgModif" modal="true" styleClass="dialogoGrande"/>

            <!--Mensaje que indica que la subvención no ha podido modificarse -->
            <p:confirmDialog message="La subvención no ha sido modificado" severity="info" widgetVar="msgNoModif" styleClass="dialogoGrande"/>

            <!--Mensaje que pregunta si deseas borrar la subvención -->
            <p:confirmDialog message="¿Estas seguro de que desea borrarlo?" severity="alert"
                             header="Iniciar borrado" widgetVar="cd" width="400" modal="true" closable="false" styleClass="dialogoNormal">

                <p:commandButton value="Aceptar" action="#{listado_Subvencion.borrar}" update="panel" styleClass="botonGrande" oncomplete="crearMensaje(xhr, status, args)"/>

                <p:commandButton value="Cancelar" onclick="cd.hide()"  styleClass="botonGrande"/>
            </p:confirmDialog>

            <p:confirmDialog message="La subvención se ha borrado" severity="info" widgetVar="borradoSi" modal="true" styleClass="dialogoGrande"/>
            <p:confirmDialog message="La subvención no se ha borrado. No está pendiente" severity="info" widgetVar="borradoNo" modal="true" styleClass="dialogoGrande"/>
            <!--Mensaje que permite modificar el estado de la resolución -->
            <p:confirmDialog message="Elija la nueva resolucion" modal="true"
                             header="Resolucion" widgetVar="cd2" width="330" styleClass="dialogoNormal">
                <h:panelGrid columns="3">
                    <p:commandButton value="Pendiente" action="#{listado_Subvencion.establecerPendiente}"
                                     oncomplete="crearMensaje(xhr, status, args)"  update="resolucion" styleClass="botonNormal"/>
                    <p:commandButton value="Rechazada" action="#{listado_Subvencion.establecerRechazada}" 
                                     oncomplete="crearMensaje(xhr, status, args)"  update="resolucion" styleClass="botonNormal"/>
                    <p:commandButton value="Concedida" action="#{listado_Subvencion.establecerConcedida}" 
                                     oncomplete="crearMensaje(xhr, status, args)"  update="resolucion" styleClass="botonNormal"/>
                </h:panelGrid>
            </p:confirmDialog>

            <!--Mensaje que indica que la resolución se ha modificado correctamente -->           
            <p:confirmDialog message="La resolucion se ha modificado" severity="info" widgetVar="msgSI" modal="true" styleClass="dialogoGrande"/>

            <!--Mensaje que indica que la resolución no se ha modificado porque ya tenia ese estado -->           
            <p:confirmDialog message="La resolución no ha cambiado de estado" severity="info" widgetVar="msgNO" modal="true" styleClass="dialogoGrande"/>
        </h:form>
    </h:body>
</html>
